Location aware ad-hoc gaming

ABSTRACT

A method of mobile gaming is disclosed. The method includes configuring a mobile device to communicate in a first communication protocol and a second communication protocol, determining location information for the mobile device, communicating the location information and a gaming request via the first communication protocol to a game server, receiving a gaming request response from the game server via the first communication protocol, initiating a gaming session in response to the gaming request response, wherein the gaming session is conducted via the second communication protocol.

CROSS REFERENCE TO RELATED APPLICATIONS

This patent claims the priority benefit under 35 U.S.C. §119(e) of U.S. provisional patent application Ser. No. 60/947,766, filed on Jul. 3, 2007, titled “LOCATION AWARE AD-HOC GAMING”, the content of which is incorporated in its entirety herein by reference for all purposes.

This patent is related to copending U.S. patent application Ser. No. 11/867,665 (MP1382), filed on Oct. 4, 2007, titled “POWER SAVE MECHANISMS FOR DYNAMIC AD-HOC NETWORKS,” and U.S. patent application Ser. No. 11/867,661 (MP1381), filed on Oct. 4, 2007, titled “AUTOMATIC AD-HOC NETWORK CREATION AND COALESCING USING WPS,” the contents of which are incorporated herein by reference for all purposes.

BACKGROUND

Wireless fidelity (Wi-Fi) networks are utilized to exchange information in both personal and corporate environments. One known Wi-Fi standard, the Wireless Local Area Network (WLAN) standard, specifies and details the set up, communications and the configuration protocols for an infrastructure WLAN.

FIG. 1 illustrates an exemplary configuration of a known network such as infrastructure WLAN 100. The infrastructure WLAN 100 includes three logical components or elements: an access point 110; a registrar 120, and a client 130. In operation, the client 130 will query or communicate with the registrar 120 via, for example, an IEEE 802.11x (802.11a, 802.11b, 802.11g . . . 802.11n, 802.11x) network, in an attempt to acquire network or communications credentials. Upon receipt of the network credentials, the client 130 establishes a communications link to access point 110. In alternate embodiments, the registrar 120 may be a portion or subsystem of the access point 110 and/or may be in communication with the access point 110.

Ad-hoc networks may be established in place of the infrastructure WLAN 100. Ad-hoc networks allow a client to establish an arbitrary and/or temporary network with one or more additional clients within a given communications area or range. Thus, ad-hoc networks provide configuration and operational flexibility to allow clients and/or devices that enter into communication range with each other to be configured to share information. It would be desirable to establish the communications link between the clients and/or devices in a seamless manner. Moreover, it would be desirable to allow for real-time or near real-time communications in order to quickly share and/or distribute time-sensitive information. It would further be desirable to implement interactive games or strategy simulations between one or more users and/or wireless devices within communications range of each other.

SUMMARY

The present disclosure generally relates to wireless communications between mobile devices, and more particularly to games and gaming between wireless devices in an ad-hoc network.

In one embodiment, a method of mobile gaming is disclosed. The method includes configuring a mobile device to communicate in a first communication protocol and a second communication protocol, determining location information for the mobile device, communicating the location information and a gaming request via the first communication protocol to a game server, receiving a gaming request response from the game server via the first communication protocol, initiating a gaming session in response to the gaming request response, wherein the gaming session is conducted via the second communication protocol.

A mobile gaming device is disclosed. The mobile gaming device includes a communication system configured to communicate via a first communication protocol and a second communication protocol. The mobile gaming device further includes a controller configured to, determine location information associated with the mobile gaming device, communicate the location information and a gaming request via the first communication protocol to a game server, receive a gaming request response from the game server via the first communication protocol, and initiate a gaming session in response to the gaming request response, wherein the gaming session is conducted via the second communication protocol.

Additional features and advantages of the present invention are described in, and will be apparent from, the following Detailed Description and the figures.

BRIEF DESCRIPTION OF THE FIGURES

FIG. 1 illustrates an embodiment of a known infrastructure network;

FIG. 2 illustrates an embodiment of an ad-hoc network that may be implemented in conjunction with the disclosure provided herein;

FIG. 3 illustrates a flowchart representative of one embodiment of an ad-hoc network connection methodology in accordance with the teaching disclosed herein;

FIG. 4 illustrates another ad-hoc network connection methodology in accordance with the teaching disclosed herein; and

FIG. 4A illustrates one embodiment of a wireless device that may implement the ad-hoc network connection methodologies disclosed herein.

DETAILED DESCRIPTION

FIG. 2 illustrates an embodiment of a wireless network that may be established without the logical components illustrated in FIG. 1. The wireless network of FIG. 2 is referred to as an ad-hoc network 200. The ad-hoc network 200 does not include an access point 110 and may be established directly between wireless devices 210 and 220. For example, the wireless devices 210 and 220 are free roaming and randomly mobile devices each having a communications range 212, 222, respectively. When the wireless devices 210, 220 are in range of each other, as shown in FIG. 2, a communications link 230 may be established directly between each device. In particular, the communications link 230 may be established between a wireless component 210 a of the wireless device 210 and a wireless component 212 a of the wireless device 212. The wireless components 210 a, 212 a may be configured to communicate via any known wireless standard such as, for example, 802.11x, SMS, ZigBee. The communications link 230 forms the basis for the ad-hoc network 200 and allows for the exchange of information without the need for an access point 110 or additional hardware. Alternate configurations and arrangements of ad-hoc networks are discussed and disclosed in U.S. patent application Ser. No. 11/867,661 (MP1381), filed on Oct. 4, 2007, titled “AUTOMATIC AD-HOC NETWORK CREATION AND COALESCING USING WPS,” the contents of which is incorporated herein by reference for all purposes.

Exemplary techniques for establishing the ad-hoc network 200 are discussed and disclosed herein. For example, the wireless device 210 may be configured to transition between an awake (active) mode and a sleep (inactive) mode during periods defined as beacon intervals. The beacon interval may be defined as a basic unit of time during which the wireless devices 210, 220 are operational. Beacon intervals may be further divided into: (1) an awake subinterval during which the wireless device is either transmitting a network connection request or listening for network activity; and (2) a sleep subinterval during which the network device is conserving power by not transmitting or receiving network messages. Before the communication link 230 or network connection is established and while awake or active, the wireless device 210 transmits or broadcasts a beacon, probe or network connection request and also listens for network activity and/or a network connection response or response beacon from, for example, the wireless device 220 if it is within the communication range 212. If a response beacon or response message is not detected while the wireless device 210 is listening, the wireless device 210 enters the sleep (inactive) mode to conserve power.

In an alternate embodiment, the wireless device 210 may alter the length and occurrence of the awake (active) mode relative to the start of each beacon interval. In another alternate embodiment, the beacon or network connection request and/or the network connection response or response beacon can be configured to include network or device information, data, etc., specific to the transmitting or broadcasting device, for example, the wireless device 210 in the example discussed above. In some embodiments, the information may include an OSI (open systems interconnection) Layer 2 address of the wireless device 210 such as a media access control (MAC) address. Different or additional information elements such as PIN codes and security credentials may also be included as part of the network connection request or probe.

FIG. 3 illustrates an embodiment of a communication sequence 300 which may be implemented by the wireless devices 210, 220. The embodiment of the communication sequence 300 discussed herein refers to the wireless device 210, however it will be understood that additional wireless devices 220, etc. may utilize the disclosure and teaching provided herein when establishing the ad-hoc network 200.

At block 310, a beacon interval may be defined for the wireless device 210. The beacon interval represents a basic unit of time measurement within the communication sequence 300. As previously discussed, the beacon interval may be divided into an awake or active interval and a sleep or inactive interval. The awake or active interval may be further described as the “sniff subinterval” or “sniff interval.” The sniff subinterval or sniff interval represents the portion or period within the beacon interval during which the wireless device 210 is transmitting a beacon, probe or network connection request, or listening for network activity. In one embodiment, the beacon interval may be equally subdivided into a plurality of subintervals. Thus, the sniff subinterval or sniff interval may occur regularly within the beacon interval and may span one or more of the equal subintervals. An exemplary beacon interval may have a duration of approximately one hundred milliseconds (100 ms) or may be configured to conform to any network requirements and/or application-specific criteria.

At block 320, the wireless device 210 transitions to the awake or active mode during the predefined or established sniff subinterval. During the sniff subinterval the wireless device transmits a beacon, probe or other message to any device within the communication range 212. As previously discussed, the beacon operates or acts as a network connection request and may be generated by the wireless device 210 operating as a network registrar 120 or equivalent. Alternatively, the beacon may be a probe request generated by, for example, the client or wireless device 210 searching for the registrar 120 which may be, in this example, the wireless device 220.

At block 330, the wireless device 210, operating within the sniff subinterval, listens or polls the communication range 212 in an attempt to identify network activity. It will be understood that the steps, process and/or functionality discussed in conjunction with blocks 320 and 330 may be performed serially as disclosed herein. Alternatively, the steps, processes and/or functionality discussed in conjunction with blocks 320 and 330 may be performed in parallel or reordered such that block 330 (listening) is performed before block 320 (transmitting or broadcasting). In one exemplary embodiment, the duration or period of the sniff subinterval may be approximately three point two milliseconds (3.2 ms).

At block 340, the wireless device 210 may establish a communications link 230 or network connection with a device, for example, the wireless device 220, within the communication range 212. For example, the wireless device 210, while listening for network activity or beacons, may detect a network connection request transmitted by another device, for example the wireless device 220. The network connection request may represent a beacon generated by the wireless device 220 or it may represent a response to the beacon transmitted by the wireless device 210. In one embodiment, the wireless device 220 may detect the beacon transmitted at block 320 during one of the preceding beacon intervals and may have transmitted a response. The response, in turn, may be detected by the wireless device 210 during the current or active sniff subinterval defined within the beacon interval. This challenge/response and/or handshake procedure provides a framework upon which the communication link 230 may be established.

Alternatively, at block 350, if a network connection request and/or a response is not detected, the wireless device 210 may enter the sleep or inactive mode. In an exemplary embodiment, the wireless device 210 may operate in the sleep or inactive mode for more than ninety percent (90%) of each beacon interval in order to, for example, conserve power. Alternative power conservation methods and scenarios are disclosed and discussed in copending U.S. patent application Ser. No. 11/867,665 (MP1382), filed on Oct. 4, 2007, titled “POWER SAVE MECHANISMS FOR DYNAMIC AD-HOC NETWORKS,” the content of which is incorporated herein by reference for all purposes.

FIG. 4 illustrates an embodiment of a communication sequence 400 which may be implemented by the wireless devices 210, 220. The communication sequence 400 may be implemented to improve the performance, battery life and connectivity between the wireless devices 210, 220. As with the communication sequence 300 discussed above, the communication sequence 400 discussed herein refers to the wireless device 210, however it will be understood that additional wireless devices 220, etc. may utilize the disclosure and teaching provided herein when establishing the ad-hoc network 200.

At block 402, the wireless device 210 may determine or calculate its current position. For example, the wireless device 210 may include a global positioning system (GPS) receiver to determine a current position based on, for example, the device latitude, longitude and altitude. Alternatively, wireless device 210 may utilize cellular triangulation to determine its position, or the user may manually enter the position or street location of the wireless device. In yet another alternative, a position may be estimated for the wireless device 210 by scanning or communicating with a WLAN or 802.11 access point configured to broadcast the position of the access point.

At block 404, the wireless device 210 may communicate a game request that is indicative of a desire, interest or ability to play an interactive game with a game server configured to host said game. The wireless device 210 may communicate with the game server utilizing the wireless communication component 210 a which may include a cellular radio configured for GSM, GPRS, WCDMA and/or any other communication standard or protocol. For example, the wireless device 210 may communicate a position, desire to initiate game play, or other information with the game server via a simple message service (SMS). Position information for the wireless device 210 may be periodically updated and/or provided to the game server as needed or in a schedule manner. If the wireless device 210 includes a GPS receiver, position, direction, velocity and time information may be communicated to the game server to reduce or limit the number of communications or updates provided to the game server.

At block 406, other players or wireless devices, for example, the wireless device 220, may register and communicate with the game server.

At block 408, the game server may track and monitor the position information associated with each of the registered wireless devices 210, 220, etc. The position information for each of the registered wireless devices 210, 220, etc. may be compared to determine the proximity and/or relative location of each of the registered wireless devices to the remaining registered wireless devices.

At block 410, registered wireless devices, for example, the wireless devices 210 and 220, which are determined to be within a predefined proximity, for example, within WiFi or WLAN range (approximately 100 m) of each other, may be alerted via a game request response such as an SMS message communicated by the game server to each wireless device 210, 220. The SMS message may include information relating to the other wireless device, the SSID of the WiFi or WLAN access point, login or configuration data, transmission rates and any other information helpful for communication via the WLAN or 802.11 access point.

At block 412, the registered wireless devices 210, 220, etc., within WiFi or WLAN range of each other may power-up or initiate a WiFi, WLAN radio, e.g., a power intensive radio, utilizing the parameters received within the SMS message discussed in connection with step or block 410. The registered wireless devices 210, 220, etc. may now communicate and/or interact to exchange information. The information exchanged may facilitate game play between the registered wireless device 210, 220, etc. If the registered wireless devices 210, 220, etc., do not, within a predefined period of time, identify or locate each other, the WiFi, WLAN radio may be powered down to conserve battery power.

The communication sequence 400 may return to the block 402 and begin the process of locating other access points and/or wireless devices for communications.

The approach outlined below attempts at facilitating ad-hoc gaming for a location aware portable device without requiring the 802.11 radio to be powered on periodically for long periods of time, consequently improving battery life.

The portable device determines its position (latitude/longitude/altitude) via GPS receiver, user input of address (via keypad) or by scanning an 802.11 Access point broadcasting position information in beacons/probe responses.

When user indicates interest in playing a game, the portable device registers its position coordinates with a server on the internet via GSM/GPRSIWCDMA. In this particular use case, SMS (Simple Message Service), will be used to register the portable device's coordinates with the server using a text message. Every time there is a pre-determined change in position of the portable device, the device would re-register its position coordinates with the server. In case GPS is available, the portable device may additionally report position, velocity and time information, to prevent frequent position updates.

Each and every player interested in playing would register with the server.

Every time a user registers its position with server, and/or periodically, the server would check its database and determine proximity of registered users to each other.

If the users are determined to be in 802.11 (about 100 m) range of each other, the server would send a SMS to the user portable device. The SMS from the server would include information about neighboring user's identity, channel to use, SSID and transmission rate to be used for communicating with the neighbor over WiFi.

The portable device would power on its short-range WiFi radio for a predetermined duration T, on receiving message in Step 5, and uses parameters (channelISSIDITx Rate) in the message to establish communication with a neighbor. If during the time T, the device discovers the intended neighbor and establishes communication, the users may end up playing a multi-player game. Otherwise, if T expires without the users discovering each other, the portable device would shut down its short range wireless radio and return processing back to step 1.

FIG. 4A illustrates an embodiment or configuration that may be implemented in one or more of the wireless devices 210, 220, etc. For example, the wireless device 210 may include a memory 450 in communication with a processor 452. The memory 450 may include or be programmed with one or more computer readable instructions 454. The computer readable instructions 454 may embody the communication sequences 300, 400, other device operation or communication functions, reporting or maintenance functions and/or other control or network level functions. The memory 450 and the processor 452 may cooperate to define a controller 456. The controller 456 may be in communication with a communication system 458. The communication system 458 may include a first communication module 460 and a second communication module 462. The first communication module 460 may be configured to communicate utilizing a first communication protocol and a WiFi or WLAN radio, while second communication module 462 may be configured to communicate utilizing a second communication protocol and a cellular radio.

It should be understood that various changes and modifications to the presently preferred embodiments described herein will be apparent to those skilled in the art. Such changes and modifications can be made without departing from the spirit and scope of the present invention and without diminishing its intended advantages. It is therefore intended that such changes and modifications be covered by the appended claims. 

1-19. (canceled)
 20. A method of mobile communication for a mobile device, the mobile device configured to communicate in a first communication protocol and a second communication protocol, the second communication protocol being a short-range communication protocol distinct from the first communication protocol, the method comprising: communicating a communication request via the first communication protocol to a remote server; receiving a communication request response from the remote server via the first communication protocol, wherein the communication request response indicates that another mobile device is within a communication range of the second communication protocol; in response to receiving the communication request response, powering a short-range radio configured to communicate with the another mobile device via the second communication protocol; and initiating a communication session using the short-range radio, wherein the communication session is conducted between the mobile device and the another mobile device via the second communication protocol.
 21. The method of claim 20, further comprising: determining location information for the mobile device and communicating the location information to the remote server along with the communication request, wherein the location information is determined based on GPS information, manual information or triangulation.
 22. The method of claim 20, wherein the communication request response includes communication information; and wherein the mobile device uses the communication information in order to initiate the communication session.
 23. The method of claim 22, wherein the communication information is selected from the group consisting of: information relating to the another mobile device; an SSID of an access point, login or configuration data; and transmission rate for communicating with the another mobile device.
 24. The method of claim 20 further comprising: updating the location information for the mobile device.
 25. The method of claim 20, further comprising: monitoring whether the mobile device establishes communication with the another mobile device; and in response to failing to establish communication with the another mobile device within a predetermined period of time, powering down the short-range radio.
 26. The method of claim 20, wherein the gaming request and the gaming request response are SMS messages communicated via the first communication protocol.
 27. The method of claim 20, wherein the second communication protocol comprises Wireless Fidelity (Wi-Fi).
 28. The method of claim 20, further comprising: operating the mobile device in an active mode or inactive mode, wherein the mobile device communicates the location information and the communication request while operating according to the active mode.
 29. The method of claim 28, wherein the mobile device receives the communication request response from the remote server while operating according to the active mode.
 30. A mobile device comprising: a communication system configured to communicate via a first communication protocol and a second communication protocol, the second communication protocol being a short-range communication protocol distinct from the first communication protocol, the communication system comprising: a short-range radio configured to communicate with another mobile device via the second communication protocol; and a controller configured to: communicate a communication request via the first communication protocol to a remote server; receive a communication request response from the remote server via the first communication protocol, wherein the communication request response indicates that the another mobile device is within a communication range of the second communication protocol; power up the short-range radio in response to receiving the communication request response; and initiate a communication session using the short-range radio, wherein the communication session is conducted directly between the mobile device and the another mobile device via the second communication protocol.
 31. The mobile device of claim 30, wherein the controller is further configured to: determine location information for the mobile device and communicate the location information to the remote server along with the communication request, wherein the location information is determined based on GPS information, manual information or triangulation.
 32. The mobile device of claim 30, wherein the communication request response includes communication information; and wherein the mobile device uses the communication information in order to initiate the communication session.
 33. The mobile device of claim 32, wherein the communication information is selected from the group consisting of: information relating to the another mobile device; an SSID of an access point, login or configuration data; and transmission rate for communicating with the another mobile device.
 34. The mobile device of claim 30, wherein the controller is further configured to update the location information for the mobile device.
 35. The mobile device of claim 30, wherein the controller is further configured to: monitor whether the mobile device establishes a communication with the another mobile device; and in response to failing to establish communication with the another mobile device within a predetermined period of time, powering down the short-range radio.
 36. The mobile device of claim 30, wherein the communication request and the communication request response are SMS messages communicated via the first communication protocol.
 37. The mobile device of claim 30, wherein the second communication protocol comprises Wireless Fidelity (Wi-Fi).
 38. The mobile device of claim 30, wherein the controller is further configured to: operate the communication system in an active mode and an inactive mode, wherein the controller is configured to communicate the location information and the communication request to the remote service while the controller operates the communication system according to the active mode.
 39. The mobile device of claim 38, wherein the controller is configured to receive the communication request response from the remote server while the controller operates the communication system according to the active mode. 